CatMove
CatMove Transfer file or directory to another directory on the same volume
#include <Files.h> File Manager (PBxxx)
OSErr CatMove( vRefNum, dirID, oldName, newDirID, newName );
short vRefNum; volume, drive or working directory
long DirID; ID of source directory
Str255 oldName; address of source directory name
long newDirID; ID of destination directory
Str255 newName; address of destination directory name
returns Error Code; 0=no error
CatMove moves the directory entry of a file or directory into a different
directory on the same volume. File contents are not transferred; this is
strictly a directory-modification operation. It is similar to the PBCatMove
routine, but it takes a vRefNum, dirID's and filenames instead of a complicated
CMovePBRec structure.
Returns: an operating system Error Code. It will be one of:
noErr (0) No error
badMovErr (-122) Can't move into offspring
bdNamErr (-37) Bad file name or attempt to move into file
dupFNErr (-48) Duplicate filename (destination file/dir already exists)
fnfErr (-43) Source file not found
ioErr (-36) I/O error
nsvErr (-35) No such volume
paramErr (-50) No default volume
vLckdErr (-46) Volume is locked
wPrErr (-44) Diskette is write-protected

Notes: The file or directory specified by ioNamePtr, ioVRefNum, and ioDirID (in
various combinations), is transferred to the directory identified by
ioNewName and/or ioNewDirID.
CatMove cannot transfer between different disks ( volumes) nor can it
rename an item - use PBHRename for that.